<?php
require_once($_SERVER["DOCUMENT_ROOT"] . '/Esquina_da_TI/ClassesBasicas/Noticia.php');
require_once('IRepositorioNoticia.php');
require_once('Conexao.php');

/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of RepositorioNoticia
 *
 * @author Paulo
 */
class RepositorioNoticia implements IRepositorioNoticia {
    private $conexao = null;


    function __construct() {
        $this->conexao = new Conexao();
    }

    public function cadastrarNoticia($noticia) {
        $resultado = false;

        $this->conexao->abrirConexao();

        $titulo = $noticia->getTitulo();
        $resumo = $noticia->getResumo();
        $data = $noticia->getData();
        $noticia = $noticia->getNoticia();
        $email = $noticia->getEmailAutor();

        $noticia = new Noticia();
        $query = "INSERT INTO noticia(titulo,resumo,data,noticia,emailAutor) VALUES
            ('".$titulo."','".$resumo."','".$data."','".$noticia."','".$email."');";

        if($this->conexao->executarQuery($query)) {
            $resultado = true;
        }else {
            $resultado = false;
        }

        $this->conexao->fecharConexao();

        return $resultado;

    }


    public function localizarNoticia($codNoticia,$titulo) {
        $this->conexao->abrirConexao();
        $noticia = new Noticia();

        $query = "SELECT Noticia.codNoticia, Noticia.assunto, Noticia.titulo,
            Noticia.data,Noticia.texto, Noticia.usuario FROM Noticia WHERE
            codNoticia = '".$codNoticia."'
            OR titulo = '".$titulo."'";

        $r = $this->conexao->executarQuery($query);

        if($this->conexao->numeroLinhas($r) == 0) {
            $noticia = null;
        }else {
            $n = mysql_fetch_array($r);
            $noticia->setCodNoticia($codNoticia);
            $noticia->setAssunto($assunto);
            $noticia->setTitulo($titulo);
            $noticia->setData($data);
            $noticia->setTexto($texto);
            $noticia->setUsuario($usuario);
        }

        $this->conexao->fecharConexao();

        return $noticia;
    }


    public function atualizarNoticia($noticia) {
        $retorno = false;

        $this->conexao->abrirConexao();

        $noticia = new Noticia();

        $query = "UPDATE noticia set titulo = '".$noticia->getTitulo()."', resumo = '".$noticia->getResumo().
        "', data = '".$noticia->getData()."', noticia = '".$noticia->getNoticia()."', emailAutor = '".$noticia->getEmailAutor().
        "' WHERE codNoticia = ".$noticia->getCodNoticia().";";

        if($this->executarQuery($query)){
            $retorno = true;
        }

        $this->conexao->fecharConexao();

        return $retorno;
    }

    public function removerNoticia($codNoticia) {
        $retorno = false;

        $this->conexao->abrirConexao();

        $query = "DELETE FROM noticia WHERE codNoticia = '".$codNoticia."';";
        var_dump($query);
        if($this->conexao->executarQuery($query)) {
            $retorno = true;
        }

        $this->conexao->fecharConexao();

        return $retorno;
    }


    public function noticiasRecentes() {
        $arrayNoticias = array("");
        $this->conexao->abrirConexao();

        $query = "SELECT * FROM Noticia";

        $r = $this->conexao->executarQuery($query);

        while($n = mysql_fetch_array($r)) {
            $noticia = new Noticia();
            $noticia->setCodNoticia($n['codNoticia']);
            $noticia->setTitulo($n['titulo']);
            $noticia->setTexto($n['texto']);
            $noticia->setAssunto($n['assunto']);
            $noticia->setData($n['data']);
            $noticia->setUsuario($n['usuario']);

            array_push($arrayNoticias, $noticia);
        }


        return $arrayNoticias;
    }

    //Este método irá carregar um resumo das 30 principais notícias
    public function mostrarNoticias() {

        $this->conexao->abrirConexao();

        $sql = mysql_query("select * from noticia limit 30");

        while($linha = mysql_fetch_array($sql)) {
            $id  = $linha["codNoticia"];
            $titulo = $linha["titulo"];
            $resumo = $linha["resumo"];

            echo "<html>";
            echo "<body alink='#CCff33' vlink='#000000'>";
            echo "<center>";
            echo "<table width='500' height='100' border='0'>";
            echo "<font face='verdana' size='1' color='FFFFFF'>";
            echo "<tr><td height='10' bgcolor='#0099FF'><div align='center'><b>$titulo</b></div></td></tr>";
            echo "<tr><td height='33' bgcolor='#CCffCC'><a href='javascript:exibirCarregarNoticia($id)'><div align='justify'>$resumo</div></a></td></tr>";
            echo "</font>";
            echo "</center>";
        }

        echo "</table>";
        echo "</body>";
        echo "</html>";

        $this->conexao->fecharConexao();
    }

    //Este método carrega uma notícia selecionada pelo
    //usuario
    public function carregarNoticia($id) {
        
        $this->conexao->abrirConexao();

        $sql = mysql_query("SELECT noticia.titulo, noticia.noticia, noticia.emailAutor FROM  noticia WHERE codNoticia=".$id." LIMIT 1;");

            $busca=mysql_fetch_array($sql);

            $titulo = $busca['titulo'];
            $noticia = $busca['noticia'];
            $emailAutor = $busca['emailAutor'];
            $id	= $busca['codNoticia'];
            
            echo "<html>";
            echo "<body alink='#CCff33' vlink='#000000'>";
            echo "<br>";
            echo "<br>";
            echo "<table witdh='500'>";
            echo "<tr><td witdh='500' align='center' bgcolor='#CCCCCC' valign='middle'>";
            echo "<h2><b>$titulo</b></h2>";
            echo "</td></tr><tr>";
            echo "<td width='500' valign='top'>";
            echo "<br>";
            echo "</br>";
            echo "<div align='justify'><font face='verdana' size=2px><b>$noticia</b></font></div>";
            echo "</td></tr><tr><td cols='6'>";
            echo "<font face='verdana' size='1'><a href=\"mailto:$emailAutor\">$emailAutor</a></font>";
            echo "</td></tr>";
            echo "</table>";
            echo "</body>";
            echo "</html>";

        $this->conexao->fecharConexao();
    }
}
?>
